package com.hivekion.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnComment;
import com.gitee.sunchenbin.mybatis.actable.annotation.ColumnType;
import com.gitee.sunchenbin.mybatis.actable.constants.MySqlTypeConstant;
import com.hivekion.common.entity.BaseEntity;
import lombok.Data;

/**
 * 菜单权限表 sys_menu
 *
 * @author sutao
 */
@Data
@TableName("sys_menu")
public class SysMenu extends BaseEntity {
      @TableField
      @ColumnComment("菜单名称")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String menuName;

      @TableField
      @ColumnComment("父菜单ID")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String parentId;

      @TableField
      @ColumnComment("显示顺序")
      @ColumnType(value = MySqlTypeConstant.INT, length = 4)
      private Integer sortCode;

      @TableField
      @ColumnComment("路由地址")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String path;

      @TableField
      @ColumnComment("组件路径")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String component;

      @TableField
      @ColumnComment("是否为外链（0是 1否）")
      @ColumnType(value = MySqlTypeConstant.INT, length = 4)
      private Integer isFrame;

      @TableField
      @ColumnComment("类型（1目录 2菜单 3按钮）")
      @ColumnType(value = MySqlTypeConstant.INT, length = 4)
      private Integer menuType;

      @TableField
      @ColumnComment("显示状态（0显示 1隐藏）")
      @ColumnType(value = MySqlTypeConstant.INT, length = 4)
      private Integer visible;

      @TableField
      @ColumnComment("菜单状态（0显示 1隐藏)")
      @ColumnType(value = MySqlTypeConstant.INT, length = 4)
      private Integer status;

      @TableField
      @ColumnComment("权限字符串")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String perms;

      @TableField
      @ColumnComment("菜单图标")
      @ColumnType(value = MySqlTypeConstant.VARCHAR, length = 50)
      private String icon;
}
